Non-blocking Writes to Files

نویسندگان

  • Daniel Campello
  • Hector López
  • Ricardo Koller
  • Raju Rangaswami
  • Luis Useche
چکیده

Writing data to a page not present in the file-system page cache causes the operating system to synchronously fetch the page into memory first. Synchronous page fetch defines both policy (when) and mechanism (how), and always blocks the writing process. Non-blocking writes eliminate such blocking by buffering the written data elsewhere in memory and unblocking the writing process immediately. Subsequent reads to the updated page locations are also made non-blocking. This new handling of writes to non-cached pages allow processes to overlap more computation with I/O and improves page fetch I/O throughput by increasing fetch parallelism. Our empirical evaluation demonstrates the potential of nonblocking writes in improving the overall performance of systems with no loss of performance when workloads cannot benefit from it. Across the Filebench write workloads, non-blocking writes improve benchmark throughput by 7X on average (up to 45.4X) when using disk drives and by 2.1X on average (up to 4.2X) when using SSDs. For the SPECsfs2008 benchmark, non-blocking writes decrease overall average latency of NFS operations between 3.5% and 70% and average write latency between 65% and 79%. When replaying the MobiBench file system traces, non-blocking writes decrease average operation latency by 20-60%.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Truly Non-blocking Writes

Writing data within user or operating system memory often encounters the classic read-before-write problem whereby the page written to must first be read from the backing store, effectively blocking the writing process before modifications are made. Unfortunately, the large gap between memory and storage access performance adversely affects workloads that require substantial readbefore-write op...

متن کامل

The Neutral Message Language: A Model and Method for Message Passing in Heterogeneous Environments

To achieve efficient communication between distributed real-time processes, it is desirable to both choose the best protocol for each communication path and limit variation to improve software portability. These divergent goals can be satisfied through the use of a uniform application programming interface (API) that hides the details of specific protocols from programmers. The Neutral Message ...

متن کامل

The Zebra Striped

Zebra is a network file system that increases throughput by striping the file data across multiple servers. Rather than striping each file separately, Zebra forms all the new data from each client into a single stream, which it then stripes using an approach similar to a log-structured file system. Thm provides high performance for writes of small files as well as for reads and writes of large ...

متن کامل

Dataflow Architectures for GALS

In Kahn process network (KPN), the processes (nodes) communicate by unbounded unidirectional FIFO channels (arcs), with the property of non-blocking writes and blocking reads on the channels. KPN provides a semantic model of computation, where a computation can be expressed as a set of asynchronously communicating processes. However, the unbounded FIFO based asynchrony is not realizable in prac...

متن کامل

Parallel I/O for EQM Applications

As processing speeds increase, I/O is becoming a bottleneck for certain classes of applications. This is particularly true for applications that perform frequent check-pointing or frequently write out intermediate results. Traditional approaches to I/O typically result in poor performance. MPI-I/O simplifies programming and potentially improves performance by allowing the programmer to make a s...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015